package com.kit.personalkit.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 解决文件回显显示的问题，设置虚拟目录映射
 */
@Configuration
public class MyMvcConfig implements WebMvcConfigurer {

    // 文件保存在真实目录/images/下，
    // 访问的时候使用虚路径/images/.png，就直接/images/1.png就ok了。
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //将物理地址upload下的文件映射到/images
        //访问的时候就直接访问http://localhost:8080/images/用户id/文件名
        registry.addResourceHandler("/images/**")
                .addResourceLocations("file:"+System.getProperty("user.dir")+"/images/");
        registry.addResourceHandler("/backend/**").addResourceLocations("/backend/");

    }
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedHeaders("*")
                .allowedMethods("*")
                .allowedOriginPatterns("*") // .allowedOrigins("*")
                .allowCredentials(true)
                .maxAge(3600);
    }

}